package com.edgclub.edg.api;

import android.content.Context;

import com.edgclub.edg.GuZhiApplication;
import com.edgclub.edg.http.VolleyHttp;
import com.edgclub.edg.http.VolleyListener;
import com.edgclub.edg.http.param.Params;
import com.edgclub.edg.utils.util.LanguageUtil;


/**
 * 最底层的api
 * 
 * @author 陈坤彬
 * 
 */
public class GuZhiApi {

	private Context mContext;
	private VolleyHttp mVolleyHttp;

	public GuZhiApi(Context mContext) {
		this.mContext = GuZhiApplication.getInstance();

		mVolleyHttp = new VolleyHttp(mContext);
	}

	/**
	 * post 请求
	 * 
	 * @param tag
	 * @param methodName
	 * @param params
	 * @param listener
	 */
	public void post(String tag, String methodName, Params params,
			VolleyListener listener) {
		mVolleyHttp.post(tag, ApiConfig.BASE_URL + methodName, params,
				listener);
	}

	/**
	 * post 请求
	 *
	 * @param tag
	 * @param methodName
	 * @param params
	 * @param listener
	 */
	public void postCharge(String tag, String methodName, Params params,
					 VolleyListener listener) {
		mVolleyHttp.postCharge(tag, ApiConfig.CHARGE_BASE_URL + methodName, params,
				listener);
	}
	/**
	 * post 请求
	 *
	 * @param tag
	 * @param methodName
	 * @param params
	 * @param listener
	 */
	public void postCharge1(String tag, String methodName, Params params,
						   VolleyListener listener) {
		mVolleyHttp.postCharge(tag, ApiConfig.BASE_URL + methodName, params,
				listener);
	}
	/**
	 * post 请求
	 * 
	 * @param tag
	 * @param params
	 * @param listener
	 */
	public void postByUrl(String tag, String url, Params params,
			VolleyListener listener) {
		mVolleyHttp.post(tag,url, params,
				listener);
	}

	/**
	 * post 请求
	 *
	 * @param tag
	 * @param methodName
	 * @param params
	 * @param listener
	 */
	public void postOnce(String tag, String methodName, Params params,
						 VolleyListener listener) {
		mVolleyHttp.post(tag, ApiConfig.BASE_URL + methodName, params,
				listener);
	}

	/**
	 * post 请求
	 * 
	 * @param tag
	 * @param methodName
	 * @param params
	 * @param listener
	 */
	public void postYouKu(String tag, String methodName ,Params params, VolleyListener listener) {
		mVolleyHttp.post(tag, ApiConfig.YOUKU_URL + methodName, params, listener);
	}

	/**
	 * get请求
	 * 
	 * @param tag
	 * @param url
	 * @param listener
	 */
	public void get(String tag, String url, VolleyListener listener) {
		mVolleyHttp.get(tag, ApiConfig.BASE_URL + url, listener);
	}

	/**
	 * get请求
	 *
	 * @param tag
	 * @param url
	 * @param listener
	 */
	public void getMapLocation(String tag, String url, VolleyListener listener) {

		String language = LanguageUtil.getLanguageEnv();
		if ("zh-CN".equals(language) || "zh-TW".equals(language)){
			mVolleyHttp.get(tag, ApiConfig.MAP_LOCATION_URL + url, listener);
		} else {
			mVolleyHttp.get(tag, ApiConfig.MAP_LOCATION_URL2 + url, listener);
		}

	}

	/**
	 * 取消请求
	 * 
	 * @param tag
	 */
	public void cancel(String tag) {
		mVolleyHttp.cancel(tag);
	}
}
